package com.ruoyi.wx.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 设备日志对象 device_log
 *
 * @author oy
 * @date 2022-12-12
 */
public class DeviceLog extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 日志id */
    private Long deviceLogId;

    /** 设备Id */
    @Excel(name = "设备Id")
    private Long deviceId;

    /** 设备号 */
    @Excel(name = "设备号")
    private Long deviceNo;

    /** sim卡号 */
    @Excel(name = "sim卡号")
    private Long simNum;

    /** 车辆Id */
    @Excel(name = "车辆Id")
    private Long carId;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private Integer carNo;

    /** 人员Id */
    @Excel(name = "人员Id")
    private Long personId;

    /** 人员姓名 */
    @Excel(name = "人员姓名")
    private String personName;

    /** 分组Id */
    @Excel(name = "分组Id")
    private Long groupId;

    /** 分组名称 */
    @Excel(name = "分组名称")
    private String groupName;

    /** 数据端口号 */
    @Excel(name = "数据端口号")
    private Long devicePort;

    /** 经度（WGS-84) */
    @Excel(name = "经度", readConverterExp = "经度（WGS-84)")
    private Long x;

    /** 纬度（WGS-84) */
    @Excel(name = "纬度", readConverterExp = "纬度（WGS-84)")
    private Long y;

    /** 速度 */
    @Excel(name = "速度")
    private Long speed;

    /** 里程（km) */
    @Excel(name = "里程", readConverterExp = "里程（km)")
    private Long mileage;

    /** 油针值 */
    @Excel(name = "油针值")
    private String oilNeedle;

    /** 油量（升） */
    @Excel(name = "油量", readConverterExp = "升=")
    private Long oilVolumn;

    /** 方向（1-北，2东北，3-东，4东南，5-难，6-西南，7-西，8-西北） */
    @Excel(name = "方向", readConverterExp = "1=-北，2东北，3-东，4东南，5-难，6-西南，7-西，8-西北")
    private String direction;

    /** 方向度数 */
    @Excel(name = "方向度数")
    private Long directionDegree;

    /** GPS信号标记（0-无，1-有） */
    @Excel(name = "GPS信号标记", readConverterExp = "0=-无，1-有")
    private String flag;

    /** 发动机状态（0-关，1-开） */
    @Excel(name = "发动机状态", readConverterExp = "0=-关，1-开")
    private String accStatus;

    /** 车门状态（0-关，1开） */
    @Excel(name = "车门状态", readConverterExp = "0=-关，1开")
    private String doorStatus;

    /** 后尾箱状态（0-关，1-开） */
    @Excel(name = "后尾箱状态", readConverterExp = "0=-关，1-开")
    private String weightStatus;

    /** 寻求信息状态（0-否，1-是） */
    @Excel(name = "寻求信息状态", readConverterExp = "0=-否，1-是")
    private String seekStatus;

    /** 是否空载（0-否，1-是） */
    @Excel(name = "是否空载", readConverterExp = "0=-否，1-是")
    private String isNoload;

    /** 是否设防（0-否，1-是） */
    @Excel(name = "是否设防", readConverterExp = "0=-否，1-是")
    private String isFortification;

    /** 实时状态（0-未上线，1-离线，2-停车，3-行驶，4-停留，5-维修） */
    @Excel(name = "实时状态", readConverterExp = "0=-未上线，1-离线，2-停车，3-行驶，4-停留，5-维修")
    private String realTimeStatus;

    /** 状态时长 */
    @Excel(name = "状态时长")
    private String statusDuration;

    /** 车内温度 */
    @Excel(name = "车内温度")
    private String temperature;

    /** 总脉冲里程（km，采用BCD码） */
    @Excel(name = "总脉冲里程", readConverterExp = "k=m，采用BCD码")
    private Long pulseOdo;

    /** 总脉冲数（个，16进制） */
    @Excel(name = "总脉冲数", readConverterExp = "个=，16进制")
    private String pulseCount;

    /** 脉冲速度 */
    @Excel(name = "脉冲速度")
    private Long pulseSpeed;

    /** 基站局号 */
    @Excel(name = "基站局号")
    private String gsmloc;

    /** 基站蜂窝号 */
    @Excel(name = "基站蜂窝号")
    private String gsmci;

    /** 国家代号 */
    @Excel(name = "国家代号")
    private String accuracy;

    /** 事件代码 */
    @Excel(name = "事件代码")
    private String eventCode;

    /** 事件说明 */
    @Excel(name = "事件说明")
    private String eventDesc;

    /** 报警类型列表 */
    @Excel(name = "报警类型列表")
    private String alarmList;

    /** 车辆原始状态信息 */
    @Excel(name = "车辆原始状态信息")
    private String carStatus;

    /** gps定位时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "gps定位时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date gpsTime;

    /** 上报时间 */
    @Excel(name = "上报时间")
    private String reportTime;

    public void setDeviceLogId(Long deviceLogId)
    {
        this.deviceLogId = deviceLogId;
    }

    public Long getDeviceLogId()
    {
        return deviceLogId;
    }
    public void setDeviceId(Long deviceId)
    {
        this.deviceId = deviceId;
    }

    public Long getDeviceId()
    {
        return deviceId;
    }
    public void setDeviceNo(Long deviceNo)
    {
        this.deviceNo = deviceNo;
    }

    public Long getDeviceNo()
    {
        return deviceNo;
    }
    public void setSimNum(Long simNum)
    {
        this.simNum = simNum;
    }

    public Long getSimNum()
    {
        return simNum;
    }
    public void setCarId(Long carId)
    {
        this.carId = carId;
    }

    public Long getCarId()
    {
        return carId;
    }
    public void setCarNo(Integer carNo)
    {
        this.carNo = carNo;
    }

    public Integer getCarNo()
    {
        return carNo;
    }
    public void setPersonId(Long personId)
    {
        this.personId = personId;
    }

    public Long getPersonId()
    {
        return personId;
    }
    public void setPersonName(String personName)
    {
        this.personName = personName;
    }

    public String getPersonName()
    {
        return personName;
    }
    public void setGroupId(Long groupId)
    {
        this.groupId = groupId;
    }

    public Long getGroupId()
    {
        return groupId;
    }
    public void setGroupName(String groupName)
    {
        this.groupName = groupName;
    }

    public String getGroupName()
    {
        return groupName;
    }
    public void setDevicePort(Long devicePort)
    {
        this.devicePort = devicePort;
    }

    public Long getDevicePort()
    {
        return devicePort;
    }
    public void setX(Long x)
    {
        this.x = x;
    }

    public Long getX()
    {
        return x;
    }
    public void setY(Long y)
    {
        this.y = y;
    }

    public Long getY()
    {
        return y;
    }
    public void setSpeed(Long speed)
    {
        this.speed = speed;
    }

    public Long getSpeed()
    {
        return speed;
    }
    public void setMileage(Long mileage)
    {
        this.mileage = mileage;
    }

    public Long getMileage()
    {
        return mileage;
    }
    public void setOilNeedle(String oilNeedle)
    {
        this.oilNeedle = oilNeedle;
    }

    public String getOilNeedle()
    {
        return oilNeedle;
    }
    public void setOilVolumn(Long oilVolumn)
    {
        this.oilVolumn = oilVolumn;
    }

    public Long getOilVolumn()
    {
        return oilVolumn;
    }
    public void setDirection(String direction)
    {
        this.direction = direction;
    }

    public String getDirection()
    {
        return direction;
    }
    public void setDirectionDegree(Long directionDegree)
    {
        this.directionDegree = directionDegree;
    }

    public Long getDirectionDegree()
    {
        return directionDegree;
    }
    public void setFlag(String flag)
    {
        this.flag = flag;
    }

    public String getFlag()
    {
        return flag;
    }
    public void setAccStatus(String accStatus)
    {
        this.accStatus = accStatus;
    }

    public String getAccStatus()
    {
        return accStatus;
    }
    public void setDoorStatus(String doorStatus)
    {
        this.doorStatus = doorStatus;
    }

    public String getDoorStatus()
    {
        return doorStatus;
    }
    public void setWeightStatus(String weightStatus)
    {
        this.weightStatus = weightStatus;
    }

    public String getWeightStatus()
    {
        return weightStatus;
    }
    public void setSeekStatus(String seekStatus)
    {
        this.seekStatus = seekStatus;
    }

    public String getSeekStatus()
    {
        return seekStatus;
    }
    public void setIsNoload(String isNoload)
    {
        this.isNoload = isNoload;
    }

    public String getIsNoload()
    {
        return isNoload;
    }
    public void setIsFortification(String isFortification)
    {
        this.isFortification = isFortification;
    }

    public String getIsFortification()
    {
        return isFortification;
    }
    public void setRealTimeStatus(String realTimeStatus)
    {
        this.realTimeStatus = realTimeStatus;
    }

    public String getRealTimeStatus()
    {
        return realTimeStatus;
    }
    public void setStatusDuration(String statusDuration)
    {
        this.statusDuration = statusDuration;
    }

    public String getStatusDuration()
    {
        return statusDuration;
    }
    public void setTemperature(String temperature)
    {
        this.temperature = temperature;
    }

    public String getTemperature()
    {
        return temperature;
    }
    public void setPulseOdo(Long pulseOdo)
    {
        this.pulseOdo = pulseOdo;
    }

    public Long getPulseOdo()
    {
        return pulseOdo;
    }
    public void setPulseCount(String pulseCount)
    {
        this.pulseCount = pulseCount;
    }

    public String getPulseCount()
    {
        return pulseCount;
    }
    public void setPulseSpeed(Long pulseSpeed)
    {
        this.pulseSpeed = pulseSpeed;
    }

    public Long getPulseSpeed()
    {
        return pulseSpeed;
    }
    public void setGsmloc(String gsmloc)
    {
        this.gsmloc = gsmloc;
    }

    public String getGsmloc()
    {
        return gsmloc;
    }
    public void setGsmci(String gsmci)
    {
        this.gsmci = gsmci;
    }

    public String getGsmci()
    {
        return gsmci;
    }
    public void setAccuracy(String accuracy)
    {
        this.accuracy = accuracy;
    }

    public String getAccuracy()
    {
        return accuracy;
    }
    public void setEventCode(String eventCode)
    {
        this.eventCode = eventCode;
    }

    public String getEventCode()
    {
        return eventCode;
    }
    public void setEventDesc(String eventDesc)
    {
        this.eventDesc = eventDesc;
    }

    public String getEventDesc()
    {
        return eventDesc;
    }
    public void setAlarmList(String alarmList)
    {
        this.alarmList = alarmList;
    }

    public String getAlarmList()
    {
        return alarmList;
    }
    public void setCarStatus(String carStatus)
    {
        this.carStatus = carStatus;
    }

    public String getCarStatus()
    {
        return carStatus;
    }
    public void setGpsTime(Date gpsTime)
    {
        this.gpsTime = gpsTime;
    }

    public Date getGpsTime()
    {
        return gpsTime;
    }
    public void setReportTime(String reportTime)
    {
        this.reportTime = reportTime;
    }

    public String getReportTime()
    {
        return reportTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("deviceLogId", getDeviceLogId())
            .append("deviceId", getDeviceId())
            .append("deviceNo", getDeviceNo())
            .append("simNum", getSimNum())
            .append("carId", getCarId())
            .append("carNo", getCarNo())
            .append("personId", getPersonId())
            .append("personName", getPersonName())
            .append("groupId", getGroupId())
            .append("groupName", getGroupName())
            .append("devicePort", getDevicePort())
            .append("x", getX())
            .append("y", getY())
            .append("speed", getSpeed())
            .append("mileage", getMileage())
            .append("oilNeedle", getOilNeedle())
            .append("oilVolumn", getOilVolumn())
            .append("direction", getDirection())
            .append("directionDegree", getDirectionDegree())
            .append("flag", getFlag())
            .append("accStatus", getAccStatus())
            .append("doorStatus", getDoorStatus())
            .append("weightStatus", getWeightStatus())
            .append("seekStatus", getSeekStatus())
            .append("isNoload", getIsNoload())
            .append("isFortification", getIsFortification())
            .append("realTimeStatus", getRealTimeStatus())
            .append("statusDuration", getStatusDuration())
            .append("temperature", getTemperature())
            .append("pulseOdo", getPulseOdo())
            .append("pulseCount", getPulseCount())
            .append("pulseSpeed", getPulseSpeed())
            .append("gsmloc", getGsmloc())
            .append("gsmci", getGsmci())
            .append("accuracy", getAccuracy())
            .append("eventCode", getEventCode())
            .append("eventDesc", getEventDesc())
            .append("alarmList", getAlarmList())
            .append("carStatus", getCarStatus())
            .append("gpsTime", getGpsTime())
            .append("reportTime", getReportTime())
            .toString();
    }
}
